home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / 422mods.zip / TFC001.422 < prev    next >
Text File  |  1993-03-01  |  12KB  |  265 lines

  1. 2TFC001.MOD 1The ULTIMATE Title Scanning Mod
  2. The Flying Chicken [SysOp] #1 @12456
  3. 3Saturday, February 27, 1993  112:32 pm
  4.  
  5. TFC001.MOD - The Ultimate Title Scanning Mod
  6. Author: The Flying Chicken 1@12456 (WWIVLink) 1@2456 (WWIVNet)
  7. Source: WWIV 4.20 thru 4.22
  8. Version: 2.8
  9.  
  10.     This mod was originally released by me as TFC001.MOD.  All it
  11.     did was alter the title scanning command to show which messages
  12.     were awaiting network validation.  Well, I've taken this one step
  13.     further.  I've also included a mod by ShadowSpawn 1@13900 (WWIVLink)
  14.     which shows the author's address in the title scan as well as the
  15.     message number and title.  However this mod didn't work very well if
  16.     colors were used in the title, so I altered it a bit.  Still, the
  17.     credit for that goes to him.
  18.  
  19.     Here's the jist of the mod.  When you do a title scan, you will see
  20.     the following:
  21.  
  22.     (Color's included in the following listing for demo purposes.)
  23.  
  24.     1(1)0 3by #28   @124570  This is a post by a normal user
  25.     2[2]0 3by #1          0  This is a post by the SysOp
  26.     6<3>0 3by #72   @124570  This is a post awaiting validation
  27.     4=4=0 3by #267  @187500  This is a permanent post
  28.     1(5)0 3by #209  @187500  seems??
  29.  
  30.             [nnn] - Message was written by you (color 2 - yellow)
  31.             (nnn) - Message was written by another user (color 1 - cyan)
  32.             <nnn> - Message was written by another user, and is
  33.                     awaiting any kind of validation. (color 6 - blinking red)
  34.             =nnn= - Permanent message (color 4 - blue on white)
  35.  
  36.     A note, permanent messages that are awaiting validation will show up
  37.     as waiting validation first.  After validation, they will show up
  38.     as permanent.  I've also expanded the number of titles shown from 10
  39.     to 18.
  40.  
  41.     Okay... This is a quickie, but a goodie... Here we go.
  42.  
  43.     If you have version 1.0 of this mod, you'll need to make just about
  44.     all the changes anyway, so just re-do the mod.  It is short, so
  45.     it won't be difficult.
  46.  
  47.     Version WWIV 4.22 is very similar to 4.21a code, so where the
  48.     changes are noted for 4.21a, make them for 4.22, unless otherwise
  49.     indicated.  There are also 4.22 specific codes changes, which
  50.     are marked for you.
  51.  
  52.     WWIV 4.21a specific code is marked as such.  Look for '4.21a'
  53.     in the comments.  Lines containing that string in the beginning
  54.     or the end have either been added or changed.
  55.  
  56.     Not sure if this will work with 4.12, been too long since I've seen
  57.     the code, so you're on your own.  It should require very similar
  58.     changes however.
  59.  
  60.     v2.8 - Update for 4.22.  Fixed a bug that was messing up the
  61.            display slightly.
  62.     v2.5 - Update for 4.21a.  Expanded number of titles shown to 18,
  63.            and added color code scheme to display.  Added e-mail listing
  64.            enhancement for 4.21a.
  65.     v2.0 - Show messages awaiting ANY validation, show permanent messages,
  66.            user colors to help distinguish each message, included
  67.            WHOBY.MOD by ShadowSpawn, and one small bug fix.
  68.     v1.0 - Initial version
  69.  
  70.  
  71.     Before using this or any mod, back up your source !!!!!
  72.  
  73.                 PKZIP source *.c *.h *.mak
  74.  
  75.     If you mess something up later and want to unstall the mod,
  76.     just type:
  77.  
  78.                 PKUNZIP source -o
  79.  
  80.  
  81.     1.  First and most important.  I removed the color codes from the
  82.         mod below so all users can see the mod.  To use the mod, first
  83.         scan the rest of THIS FILE, replacing ^C by a Ctrl-C, which will
  84.         show up as a heart.  To create the Ctrl-C using Turbo C, type
  85.         Ctrl-P, Ctrl-C.  This also works with several stand-alone editors.
  86.         If you can't use colors, search for ^C and remove it and the
  87.         number immediately after it.
  88.  
  89.  
  90.  
  91.     2.  Load up MSGBASE1.C, and search for void scan().  Add the
  92.         following after the last declaration as shown.  You might
  93.         have s2 declared already, if you do, don't define it again,
  94.         just make sure it's the same size as indicated below.
  95.  
  96. void scan(int msgnum, int optype, int *nextsub)
  97. {
  98.   char s[81],s1[81],*b,*ss1;
  99.   int i,i1,i2,done,quit,abort,next,val,realexpress;
  100.   slrec ss;
  101.   long l,len;
  102.   postrec p,p1;
  103.   char s2[81],s3[20],s4[20];                                /* ADD */
  104.  
  105.   irt[0]=0;
  106.   irt_name[0]=0;
  107.  
  108.  
  109.     3.  Search down aways for 'List Titles' in the same void scan().
  110.         Scroll a little farter down and make the changes.  Note that
  111.         one of the existing lines below was too long for the network,
  112.         so I split the line, however no changes were made to this line.
  113.  
  114.         /** WWIV Version Information!! **/          /* 4.21a */
  115.  
  116.         Wayne decided to imitate my mod in 4.21a here, so the code
  117.         is somewhat similar to my mod already.  You'll need to
  118.         make different changes.  If you're using 4.21a, skip step 3.a
  119.         below, and go to step 3.b.  Otherwise, do 3.a and then
  120.         proceed to step 4.
  121.  
  122.  
  123.     3.a - For WWIV 4.21 and below ONLY.
  124.  
  125.         while ((!abort) && (!hangup) && (++i<=18)) {            /* CHANGE */
  126.           ++msgnum;
  127.           if ((msgs[msgnum].status & status_pending_net) ||     /* ADD */
  128.               (msgs[msgnum].status & status_unvalidated))       /* ADD */
  129.                 sprintf(s1,"6<%d>0",msgnum);                /* ADD */
  130.           else                                                  /* ADD */
  131.               if ((msgs[msgnum].status & status_no_delete))     /* ADD */
  132.                 sprintf(s1,"4=%d=0",msgnum);                /* ADD */
  133.               else                                              /* ADD */
  134.                 if ((msgs[msgnum].ownersys==0) &&
  135.                               (msgs[msgnum].owneruser==usernum))
  136.                   sprintf(s1,"2[%d]0",msgnum);              /* CHANGE */
  137.                 else
  138.                   sprintf(s1,"1(%d)0",msgnum);              /* CHANGE */
  139.           for (i1=0; i1<9 i1++)                                 /* CHANGE */
  140.             s[i1]=32;
  141.           if (msgs[msgnum].qscan>QSCN(curlsub)) {               /* CHANGE */
  142.             s[0]='';                                           /* CHANGE */0
  143.             s[1]='6';                                           /* ADD */
  144.             s[2]='*';                                           /* ADD */
  145.           }                                                     /* ADD */
  146.           strcpy(&s[11-strlen(s1)],s1);                         /* CHANGE */
  147.           strcat(s," ");
  148.  
  149.           Go to Step 4.
  150.  
  151.  
  152.     3.b - WWIV 4.21a and 4.22 ONLY !!                       /* 4.21a */
  153.  
  154.         while ((!abort) && (!hangup) && (++i<=18)) {        /* CHANGE 4.21a */
  155.           ++msgnum;
  156.           if ((msgs[msgnum].status & status_pending_net) || /* ADD */
  157.               (msgs[msgnum].status & status_unvalidated))   /* ADD */
  158.                 sprintf(s1,"6<%d>0",msgnum);              /* ADD */
  159.           else                                              /* ADD */
  160.             if ((msgs[msgnum].status & status_no_delete))   /* ADD */
  161.               sprintf(s1,"4=%d=0",msgnum);                /* ADD */
  162.             else                                            /* ADD */
  163.           if ((msgs[msgnum].ownersys==0) && (msgs[msgnum].owneruser==usernum))
  164.             sprintf(s1,"2[%d]0",msgnum);                  /* CHANGE */
  165.           else if (msgs[msgnum].ownersys!=0)                /* DELETE */
  166.             sprintf(s1,"<%d>",msgnum);                      /* DELETE */
  167.           else
  168.             sprintf(s1,"1(%d)0",msgnum);                  /* CHANGE */
  169.           for (i1=0; i1<14; i1++)                           /* CHANGE */
  170.             s[i1]=32;
  171.           if (msgs[msgnum].qscan>QSCN(curlsub)) {           /* CHANGE */
  172.             s[0]='';                                       /* ADD */0
  173.             s[1]='6';                                       /* ADD */
  174.             s[2]='*';                                       /* CHANGE */
  175.           } else {                                          /* ADD */
  176.             s[0]='';                                       /* ADD */0
  177.             s[1]='0';                                       /* ADD */
  178.             s[2]=' ';                                       /* ADD */
  179.           }                                                 /* ADD */
  180.  
  181. /* 4.22 NOTE:  Delete the following two lines !!! ***/
  182.  
  183.           if (msgs[msgnum].status & (status_pending_net | status_unvalidated))
  184.             s[0]='-';
  185.  
  186. /*** end of 4.22 note */
  187.  
  188.           strcpy(&s[13-strlen(s1)],s1);                     /* CHANGE */
  189.           strcat(s," ");
  190.           if ((msgs[msgnum].status&(status_unvalidated|status_delete))&&(!lcs()
  191. ))
  192.  
  193.  
  194.     4.  Search down a few lines, and make these changes.
  195.  
  196.       if ((msgs[msgnum].status & (status_unvalidated | status_delete))
  197.               &&(!lcs()))
  198.  
  199. /* 4.22 note:  The following line should read 'strcpy(s1,get_string(665));' */
  200.  
  201.           strcpy(s1,"<<< NOT VALIDATED YET >>>");                 /* CHANGE */
  202.         else
  203.           strcpy(s1,msgs[msgnum].title);                          /* CHANGE */
  204.         if (msgs[msgnum].ownersys == 0) {                            /* ADD */
  205.           sprintf(s3,"#%-4u",msgs[msgnum].owneruser);                /* ADD */
  206. /*4.21a*/ sprintf(s2,"3by %-5.5s       0  1%-52.52s",s3,s1);    /* ADD */0
  207.         } else {                                                     /* ADD */
  208.           sprintf(s4,"#%-4u",msgs[msgnum].owneruser);                /* ADD */
  209.           sprintf(s3,"@%-5u",msgs[msgnum].ownersys);                 /* ADD */
  210. /*4.21a*/ sprintf(s2,"3by %-5.5s %-6.6s0  1%-52.52s",s4,s3,s1); /* ADD */0
  211.         }                                                            /* ADD */
  212.         strcat(s,s2);                                                /* ADD */
  213.         pla(s,&abort);
  214.         if (msgnum>=nummsgs)
  215.           abort=1;
  216.       }
  217.  
  218.     DISCLAIMER:  I make no guarantees with this mod whatsoever.
  219.     Your installation of the mod is your acceptance of any
  220.     damages caused to your hardware or software, incendental or
  221.     otherwise.
  222.  
  223.     The mod was tested with the versions of WWIV mentioned in
  224.     this file. If the mod does NOT work for you, e-mail one of
  225.     the addresses above, and tell me EXACTLY what you did, what
  226.     the screen said, and what you did to try to fix it, and I'll
  227.     do what I can to help you out.
  228.  
  229.     PLEASE REPORT ANY BUGS TO ME AT THE ABOVE ADDRESS !!!!!!!
  230.     Any other comments, suggestions, hints, things I missed,
  231.     requests for new mods, and general "Thank you!"s are all VERY
  232.     welcomed, so drop me a line.  I don't mind updates to this
  233.     mod, but do request that you send me a courtesy copy of the
  234.     changes you made.
  235.  
  236.     *****************************************************************
  237.                               Subscribe to:
  238.  
  239.                     Modding with WWIV's Flying Chicken
  240.  
  241.               WWIVLink subtype 42456, Host @12456 (REQable)
  242.                WWIVNet subtype 42456, Host @2456 (REQable)
  243.                 IceNet subtype 42456, Host @2456 (REQable)
  244.  
  245.        All mods are released on this sub first.  Occasionally, they
  246.        make the mods subs, but usually much later.  Subscribe now!
  247.     *****************************************************************
  248.  
  249.                            The Flying Chicken
  250.        1@12456 (WWIVLink)  -  1@2456 (WWIVNet) - 1@2456 (IceNet)
  251.  
  252.                          THE INSANE ASYLUM BBS
  253.                     In Operation Since August, 1989
  254.  
  255.                    Running WWIV 4.22++  (Reg #21260)
  256.           SysOp: The Flying Chicken  -  CoSysOp: Dr. Doolittle
  257.                   Snarfable  -  Auto-SysOp Validation
  258.                  Callback Validation (Local calls only)
  259.                (214) 570-5950  -  USR Dual Std (v32/HST)
  260.  
  261.                           --- END OF LINE ---
  262. 9
  263. 9     7┌───2The─Insane─Asylum7───2(214)7──2570-59507───2WWIV─Support7───2USR─DS7───┐0
  264. 8     7└──────────────2We─Put─The─Bubbles─Back─Into─BBSing7────────────────┘0
  265.